package com.hongpu.controller;

import com.hongpu.domain.CoolTowerProject;
import com.hongpu.dto.CoolTowerProjectDto;
import com.hongpu.service.CoolTowerProjectService;
import com.hongpu.utils.ResultDto;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;

/**
 * 冷却塔安装项目
 *
 * @author 张玉胜
 * @since 2025年06月11日
 */
@RestController
@RequestMapping("/coolTowerProject")
public class CoolTowerProjectController {
    @Autowired
    CoolTowerProjectService coolTowerProjectService;

    /**
     * 冷却塔项目类型下拉列表
     */
    @GetMapping("/optionList")
    public ResultDto optionList() {
        return coolTowerProjectService.optionList();
    }

    /**
     * 新增
     */
    @PostMapping("/add")
    public ResultDto add(@RequestBody CoolTowerProject coolTowerProject) {
        return coolTowerProjectService.add(coolTowerProject);
    }

    /**
     * 修改
     */
    @PostMapping("/update")
    public ResultDto update(@RequestBody CoolTowerProject coolTowerProject) {
        return coolTowerProjectService.update(coolTowerProject);
    }

    /**
     * 删除
     */
    @GetMapping("/delete/{id}")
    public ResultDto delete(@PathVariable("id") Long id) {
        return coolTowerProjectService.delete(id);
    }

    /**
     * 启用
     */
    @GetMapping("/active/{id}")
    public ResultDto active(@PathVariable("id") Long id) {
        return coolTowerProjectService.active(id);
    }

    /**
     * 分页
     */
    @PostMapping("/page")
    public ResultDto page(@RequestBody CoolTowerProjectDto coolTowerProjectDto) {
        return coolTowerProjectService.page(coolTowerProjectDto);
    }
    /**
     * 根据项目ID获取信息
     */
    @GetMapping("/coolTowerProjectInfo/{id}")
    public ResultDto coolTowerProjectInfo(@PathVariable("id") Long id) {
        return coolTowerProjectService.coolTowerProjectInfo(id);
    }

    /**
     * 根据项目ID统计该项目的费用---点击填报时打开的页面中数据列表用的接口（分页）
     */
    @PostMapping("/costStatistics")
    public ResultDto costStatistics(@RequestBody CoolTowerProjectDto coolTowerProjectDto) {
        return coolTowerProjectService.costStatistics(coolTowerProjectDto);
    }
    /**
     * 安装项目管理查询区域-安装项目下拉列表
     */
    @GetMapping("/coolTowerProjectOptionList")
    public ResultDto coolTowerProjectOptionList() {
        return coolTowerProjectService.coolTowerProjectOptionList();
    }
}